home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / bin / software-properties-gtk < prev    next >
Text File  |  2009-09-07  |  4KB  |  113 lines

  1. #!/usr/bin/python
  2. #  software-properties - graphical abstraction of the sources.list
  3. #  
  4. #  Copyright (c) 2004,2005 Canonical
  5. #                2004,2005 Michiel Sikkes
  6. #  
  7. #  Author: Michiel Sikkes <michiel@eyesopened.nl>
  8. #          Michael Vogt <mvo@debian.org>
  9. #  This program is free software; you can redistribute it and/or 
  10. #  modify it under the terms of the GNU General Public License as 
  11. #  published by the Free Software Foundation; either version 2 of the
  12. #  License, or (at your option) any later version.
  13. #  This program is distributed in the hope that it will be useful,
  14. #  but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. #  GNU General Public License for more details.
  17. #  You should have received a copy of the GNU General Public License
  18. #  along with this program; if not, write to the Free Software
  19. #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
  20. #  USA
  21.  
  22. import pygtk
  23. pygtk.require('2.0')
  24. import gtk
  25. import gtk.gdk
  26. import gtk.glade
  27. import gobject
  28. import gettext
  29. import os
  30. import sys
  31.  
  32. gtk.gdk.threads_init()
  33.  
  34. from optparse import OptionParser
  35.  
  36. import aptsources
  37. from aptsources.sourceslist import SourcesList
  38.  
  39. #sys.path.append("@prefix@/share/update-manager/python")
  40.  
  41. from softwareproperties.gtk.SoftwarePropertiesGtk import SoftwarePropertiesGtk
  42.  
  43. if __name__ == "__main__":
  44.   _ = gettext.gettext
  45.  
  46.   # Begin parsing of options
  47.   parser = OptionParser()
  48.   parser.add_option ("-d", "--debug", action="store_true",
  49.                      dest="debug", default=False,
  50.                      help="Print some debug information to the command line")
  51.   parser.add_option ("-m", "--massive-debug", action="store_true",
  52.                      dest="massive_debug", default=False,
  53.                      help="Print a lot of debug information to the "
  54.                           "command line")
  55.   parser.add_option ("-n", "--no-update", action="store_true",
  56.                      dest="no_update", default=False,
  57.                      help="No update on repository change (useful if called "\
  58.                      "from an external program).")
  59.   parser.add_option("-t", "--toplevel", 
  60.                     action="store", type="string", dest="toplevel",
  61.                     help="Set x-window-id of the toplevel parent for the "\
  62.                     "dialog (useful for embedding)")
  63.   parser.add_option("-e", "--enable-component", 
  64.                     action="store", type="string", dest="enable_component",
  65.                     help="Enable the specified component of the distro's "\
  66.                     "repositories")
  67.   parser.add_option("--open-tab", "",
  68.                     action="store", type="string", default=None,
  69.                     help="Open specific tab number on startup")
  70.   parser.add_option("--enable-ppa", "",
  71.                     action="store", type="string", default=None,
  72.                     help="Enable PPA with the given name")
  73.   gtk.init_check()
  74.   
  75.   (options, args) = parser.parse_args()
  76.   # Check for root permissions
  77.   if os.geteuid() != 0:
  78.     dialog = gtk.MessageDialog(None, 0, gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE, 
  79.                                _("You need to be root to run this program") )
  80.     dialog.set_default_response(gtk.RESPONSE_CLOSE)
  81.     dialog.run()
  82.     dialog.destroy()
  83.     sys.exit(1)
  84.                      
  85.   localesApp="software-properties"
  86.   localesDir="/usr/share/locale"
  87.   gettext.bindtextdomain(localesApp, localesDir)
  88.   gettext.textdomain(localesApp)
  89.   gtk.glade.bindtextdomain(localesApp, localesDir)
  90.   gtk.glade.textdomain(localesApp)
  91.  
  92.   data_dir="/usr/share/software-properties/"
  93.   file = None
  94.   if len(args) > 0:
  95.     file = args[0]
  96.   if options.enable_ppa:
  97.     app = SoftwarePropertiesGtk(datadir=data_dir, options=options, file=file)
  98.     app.add_source_from_line("ppa:%s" % options.enable_ppa)
  99.     app.sourceslist.save()
  100.   elif options.enable_component:
  101.     sourceslist = SourcesList()
  102.     distro = aptsources.distro.get_distro()
  103.     distro.get_sources(sourceslist)
  104.     distro.enable_component(options.enable_component)
  105.     sourceslist.save()
  106.   else:
  107.     app = SoftwarePropertiesGtk(datadir=data_dir, options=options, file=file)
  108.     app.run()
  109.     sys.exit(app.modified_sourceslist)
  110.